// pages/address/add/add.js
import {reqAddUserAddressInfo,reqGetUserAddressInfoById,reqUpdateUserAddressInfo} from '../../../utils/api'
import { showToast } from '../../../utils/tips'
Page({

  //获取省市区数据
  handlePickerChange(e){
    // console.log(e)
    const region = e.detail.value.join('/')
    const [provinceCode,cityCode,districtCode] = e.detail.code
    this.setData({
      region,
      provinceCode,
      cityCode,
      districtCode
    })
  },

  //是否设为默认地址
  handleSwitchChange(e){
    this.setData({
      isDefault:e.detail.value? 1:0
    })
  },

  //保存
  handleSaveAddress(){
   if(this.data.id){
     //添加地址
    this.handleUpdateOnoAddress()
   }else{
     //修改地址
     this.handleAddOneAddress()
   }
  },

  //添加地址
  async handleAddOneAddress(){
    const result = await reqAddUserAddressInfo(this.data)
    // console.log(result)
    if(result.code === 200){
      showToast("地址添加成功",'success')
      wx.navigateBack()
    }
  },

  //更新地址
  async handleUpdateOnoAddress(){
    const result = await reqUpdateUserAddressInfo(this.data)
    if(result.code === 200){
      showToast("地址更新成功",'success')
      wx.navigateBack()
    }
  },


  //回显地址信息
  async getUserAddressInfoById(){
    const result = await reqGetUserAddressInfoById(this.data.id)
    // console.log(result)
    if(result.code === 200){
      const address = result.data.address
      const {
        provinceName,
        cityName,
        districtName
      } = result.data
      this.setData({
        name: result.data.name,
        phone: result.data.phone,
        address,
        // region: fullAddress.split(address)[0],
        region: provinceName + '/' + cityName + '/' + districtName,
        tagName: result.data.tagName,
        isDefault: result.data.isDefault,
        provinceCode: result.data.provinceCode,
        cityCode: result.data.cityCode,
        districtCode: result.data.districtCode,
      })
    }
  },

  /**
   * 页面的初始数据
   */
  data: {
    name: '', // 用户名
    phone: '', // 用户手机号
    address: '', // 用户详细地址 街道及门牌号 
    region: '', // 页面中显示的省市区数据
    provinceCode: '', // 省code
    cityCode: '', // 市code
    districtCode: '', // 区/县 code
    tagName: '家', // 标签名  公司/ 家
    isDefault: 0, // 是否是默认地址 0否 1是
    id: '', // 更新的时候才会用
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    const {id} = options
    if(id){
      this.setData({
        id,
      })
      //回显信息
      this.getUserAddressInfoById()
    }
   
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    //新增地址
    if(this.data.id){
      
    }else{
    //编辑地址
    }
    

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})